<?php
//define('FPDF_FONTPATH', 'C:\wamp\www\dnevnik\web\font\\');
define('FPDF_FONTPATH', '/home/dnevnik/public_html/font/');
class KorisnickiPodaci
{
    protected $skola_id;
    protected $tel = '011/275 4445';
    protected $mail = 'info@skolskidnevnik.rs';

    public function KorisnickiPodaci($skola_id)
    {
        $this->skola_id = $skola_id;
    }

    public function getSkolaRazredSelect()
    {
       $skola_id = $this->skola_id;
       $select = "<select name='razred_id' id='razred_id' onchange='hide_row()'>";
       $select .= "<option value=''>Razred</option>";
       $razred_dbs = DbFinder::from('Razred')->join('Smer')->where('SkolaId', $skola_id)->where('Smer.Tip', '<>', SmerPeer::$tip['grupni'])->orderBy('Razred')->orderBy('Slovo')->find();
       foreach($razred_dbs as $razred_db)
       {
          $select .= "<option value='".$razred_db->getId()."'>$razred_db</option>";
       }
       $select .= "</select>";

       return $select;
    }

    public function getProfesors()
    {
       $profesor_dbs = DbFinder::from('Profil')->
                       leftJoin('Profil.Id', 'Profesor.Id')->
                       leftJoin('Profesor.Id', 'Razred.ProfesorId')->
                       where('Profesor.SkolaId', $this->skola_id)->
                       withColumn('Razred.Razred', 'RazredR')->
                       withColumn('Razred.Slovo', 'RazredS')->
                       orderBy('Profil.Prezime')->
                       orderBy('Profil.Ime')->
                       groupBy('Profil.Id')->
                       find();

       return $profesor_dbs;
    }

    public function getUceniks($razred_id)
    {
       $ucenik_dbs = DbFinder::from('Profil')->
                       leftJoin('Profil.Id', 'Ucenik.Id')->
                       leftJoin('Ucenik.RazredId', 'Razred.Id')->
                       where('Ucenik.SkolaId', $this->skola_id)->
                       where('Ucenik.RazredId', ($razred_id > 0)?'=':'>', ($razred_id > 0)?$razred_id:0)->
                       withColumn('Razred.Razred', 'RazredR')->
                       withColumn('Razred.Slovo', 'RazredS')->
                       orderBy('Profil.Prezime')->
                       orderBy('Profil.Ime')->
                       groupBy('Profil.Id')->
                       find();

       return $ucenik_dbs;
    }

    public function getRoditeljs($razred_id)
    {
       $roditelj_dbs = DbFinder::from('Profil')->
                       leftJoin('Profil.Id', 'Roditelj.Id')->
                       leftJoin('Roditelj.Id', 'Ucenik.RoditeljId')->
                       leftJoin('Ucenik.RazredId', 'Razred.Id')->
                       where('Ucenik.SkolaId', $this->skola_id)->
                       where('Ucenik.RazredId', ($razred_id > 0)?'=':'>', ($razred_id > 0)?$razred_id:0)->
                       withColumn('Razred.Razred', 'RazredR')->
                       withColumn('Razred.Slovo', 'RazredS')->
                       withColumn('Roditelj.ImeMajka', 'ImeMajka')->
                       withColumn('Roditelj.PrezimeMajka', 'PrezimeMajka')->
                       withColumn('Roditelj.ImeStaratelj', 'ImeStaratelj')->
                       withColumn('Roditelj.PrezimeStaratelj', 'PrezimeStaratelj')->
                       withColumn('Roditelj.OtacPok', 'OtacPok')->
                       withColumn('Roditelj.MajkaPok', 'MajkaPok')->
                       orderBy('Profil.Prezime')->
                       orderBy('Profil.Ime')->
                       groupBy('Profil.Id')->
                       find();

       return $roditelj_dbs;
    }

    public static function getRoditeljIme($profil)
    {
       if($profil->getIme() and !$profil->getColumn('OtacPok'))
          return $profil->getPrezime().' '.$profil->getIme();
        if($profil->getColumn('ImeMajka') and !$profil->getColumn('MajkaPok'))
          return $profil->getColumn('PrezimeMajka').' '.$profil->getColumn('ImeMajka');
        if($profil->getColumn('ImeStaratelj'))
          return $profil->getColumn('PrezimeStaratelj').' '.$profil->getColumn('ImeStaratelj');
    }

    public function pdfJedan($tip, $id)
    {
       if($tip == ProfilPeer::$tip['profesor'])
         $class = 'Profesor';
       else if($tip == ProfilPeer::$tip['roditelj'])
         $class = 'Roditelj';
       else if($tip == ProfilPeer::$tip['ucenik'])
         $class = 'Ucenik';
       if($class != 'Roditelj')
         $profil = DbFinder::from('Profil')->join($class)->where($class.'.SkolaId', $this->skola_id)->where('Id', $id)->findOne();
       else $profil = DbFinder::from('Profil')->
                      join($class)->
                      withColumn('Roditelj.ImeMajka', 'ImeMajka')->
                      withColumn('Roditelj.PrezimeMajka', 'PrezimeMajka')->
                      withColumn('Roditelj.ImeStaratelj', 'ImeStaratelj')->
                      withColumn('Roditelj.PrezimeStaratelj', 'PrezimeStaratelj')->
                      withColumn('Roditelj.OtacPok', 'OtacPok')->
                      withColumn('Roditelj.MajkaPok', 'MajkaPok')->
                      where($class.'.SkolaId', $this->skola_id)->where('Id', $id)->
                      findOne();


        $pdf = new FPDF('P', 'pt');
        $pdf->SetMargins(0,0,0);
        $pdf->AddFont('Arial', '', 'arial_normal.php');
        $pdf->SetFont('Arial', '', 12);

        $pdf->AddPage();
        $koordinate = 30;

        $pdf->Text(20, $koordinate, iconv('UTF-8', 'Windows-1250', ($profil->getTip() == ProfilPeer::$tip['roditelj']) ? 'Poštovani/a '.self::getRoditeljIme($profil) : (($profil->getPol() == ProfilPeer::$pol['m']) ? 'Poštovani ' : 'Poštovana ').$profil->getIme().'!'));
        $pdf->Text(20, ($koordinate + 26), iconv('UTF-8', 'Windows-1250', 'Zahvaljujemo Vam što koristite ONLINE sistem za evidenciju đačkih ocena za  pomoć roditeljima i'));
        $pdf->Text(20, ($koordinate + 42), iconv('UTF-8', 'Windows-1250', 'učenicima. Na stranicu www.skolskidnevnik.rs možete se ulogovati koristeći sledeće podatke:'));
        $pdf->Text(20, ($koordinate + 68), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getUsername()));
        $pdf->Text(20, ($koordinate + 84), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
        $pdf->Text(20, ($koordinate + 110), iconv('UTF-8', 'Windows-1250', 'E-mail korisnički podaci:'));
        $pdf->Text(20, ($koordinate + 126), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getEmail()));
        $pdf->Text(20, ($koordinate + 142), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
        $pdf->Text(20, ($koordinate + 168), iconv('UTF-8', 'Windows-1250', 'Za sve eventualne nejasnoće prilikom korišćenja programa možete nas  kontaktirati na tel: '.$this->tel));
        $pdf->Text(20, ($koordinate + 184), iconv('UTF-8', 'Windows-1250', 'ili putem korisničkog dela (link PREDLOZI/GREŠKE) ili e-mailom podrska@skolskidnevnik.rs'));
        //$pdf->Text(20, ($koordinate + 105), iconv('UTF-8', 'Windows-1250', 'Ukoliko imate više dece u školi, molimo javite nam na navedene telefone da bismo povezali informacije na jedan korisnički nalog.'));
        //$pdf->Text(20, ($koordinate + 114), iconv('UTF-8', 'Windows-1250', 'Do kraja ove školske godine možete besplatno koristiti el. školski dnevnik. Poruke u ovom periodu su takođe besplatne i ne umanjuju'));
        //$pdf->Text(20, ($koordinate + 123), iconv('UTF-8', 'Windows-1250', 'kredit Vašeg telefona.Uplata članarine za narednu školsku godinu počeće od septembra 2009, o čemu ćemo Vas blagovremeno obavestiti.'));
        $pdf->Text(20, ($koordinate + 200), iconv('UTF-8', 'Windows-1250', 'Elektronski školski dnevnik'));

        return $pdf;
    }

    public function pdfProfesor()
    {
        $profils = DbFinder::from('Profil')->join('Profesor')->where('Profesor.SkolaId', $this->skola_id)->orderBy('Profil.Prezime')->orderBy('Profil.Ime')->find();

        $pdf = new FPDF('P', 'pt');
        $pdf->SetMargins(0,0,0);
        $pdf->AddFont('Arial', '', 'arial_normal.php');
        $pdf->SetFont('Arial', '', 11);

        $brojac = 0;
        foreach($profils as $profil)
        {
           if(($brojac % 5) == 0)
           {
              $koordinate = 20;
              $pdf->AddPage();
           }

              $pdf->Text(20, $koordinate, iconv('UTF-8', 'Windows-1250', (($profil->getPol() == ProfilPeer::$pol['m']) ? 'Poštovani ' : 'Poštovana ').$profil->getPrezime().' '.$profil->getIme().'!'));
              $pdf->Text(20, ($koordinate + 11), iconv('UTF-8', 'Windows-1250', 'Zahvaljujemo Vam što koristite ONLINE sistem za evidenciju đačkih ocena za  pomoć roditeljima i učenicima.'));
              $pdf->Text(20, ($koordinate + 22), iconv('UTF-8', 'Windows-1250', 'Na stranicu www.skolskidnevnik.rs možete se ulogovati koristeći sledeće podatke:'));
              $pdf->Text(20, ($koordinate + 38), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getUsername()));
              $pdf->Text(20, ($koordinate + 49), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
              $pdf->Text(20, ($koordinate + 65), iconv('UTF-8', 'Windows-1250', 'E-mail korisnički podaci:'));
              $pdf->Text(20, ($koordinate + 76), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getEMail()));
              $pdf->Text(20, ($koordinate + 87), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
              $pdf->Text(20, ($koordinate + 103), iconv('UTF-8', 'Windows-1250', 'Za sve eventualne nejasnoće prilikom korišćenja programa možete nas  kontaktirati na tel: '.$this->tel));
              $pdf->Text(20, ($koordinate + 114), iconv('UTF-8', 'Windows-1250', 'ili putem korisničkog dela (link PREDLOZI/GREŠKE) ili e-mailom podrska@skolskidnevnik.rs'));
              $pdf->Text(20, ($koordinate + 129), iconv('UTF-8', 'Windows-1250', 'Elektronski školski dnevnik'));

              if(($brojac % 5) != 4)
                 $pdf->Line(20, ($koordinate + 144), 600,  ($koordinate + 144));

              $koordinate += 159;
              $brojac ++;
        }

         return $pdf;
    }

    public function pdfRoditelj($razred_id)
    {
        $profils = DbFinder::from('Profil')->
                   join('Roditelj')->
                   innerJoin('Roditelj.Id', 'Ucenik.RoditeljId')->
                   withColumn('Roditelj.ImeMajka', 'ImeMajka')->
                   withColumn('Roditelj.PrezimeMajka', 'PrezimeMajka')->
                   withColumn('Roditelj.ImeStaratelj', 'ImeStaratelj')->
                   withColumn('Roditelj.PrezimeStaratelj', 'PrezimeStaratelj')->
                   withColumn('Roditelj.OtacPok', 'OtacPok')->
                   withColumn('Roditelj.MajkaPok', 'MajkaPok')->
                   where('Roditelj.SkolaId', $this->skola_id)->
                   where('Ucenik.RazredId', $razred_id)->
                   orderBy('Ucenik.RedBr')->
                   find();

        $pdf = new FPDF('P', 'pt');
        $pdf->SetMargins(0,0,0);
        $pdf->AddFont('Arial', '', 'arial_normal.php');
        $pdf->SetFont('Arial', '', 11);

        $brojac = 0;
        foreach($profils as $profil)
        {
           if(($brojac % 6) == 0)
           {
              $koordinate = 20;
              $pdf->AddPage();
           }
           if($brojac == 0)
              $koordinate = 20;

           $pdf->Text(20, $koordinate, iconv('UTF-8', 'Windows-1250', 'Poštovani/a '.self::getRoditeljIme($profil).'!'));
           $pdf->Text(20, ($koordinate + 11), iconv('UTF-8', 'Windows-1250', 'Zahvaljujemo Vam što koristite ONLINE sistem za evidenciju đačkih ocena za  pomoć roditeljima i učenicima.'));
           $pdf->Text(20, ($koordinate + 22), iconv('UTF-8', 'Windows-1250', 'Na stranicu www.skolskidnevnik.rs možete se ulogovati koristeći sledeće podatke:'));
           $pdf->Text(20, ($koordinate + 38), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getUsername()));
           $pdf->Text(20, ($koordinate + 49), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
           $pdf->Text(20, ($koordinate + 65), iconv('UTF-8', 'Windows-1250', 'Prilikom prvog logiranja dobijate 15 dana besplatnog korišćenja INTERNET ŠKOLSKOG DNEVNIKA. SMS poruke u'));
           $pdf->Text(20, ($koordinate + 76), iconv('UTF-8', 'Windows-1250', 'ovom periodu su takođe besplatne i ne umanjuju kredit Vašeg telefona.'));
           $pdf->Text(20, ($koordinate + 87), iconv('UTF-8', 'Windows-1250', ''));
           $pdf->Text(20, ($koordinate + 98), iconv('UTF-8', 'Windows-1250', 'Za sve eventualne nejasnoće prilikom korišćenja programa možete nas kontaktirati na tel: '.$this->tel));
           $pdf->Text(20, ($koordinate + 110), iconv('UTF-8', 'Windows-1250', 'ili putem korisničkog dela (link PREDLOZI/GREŠKE) ili e-mailom '.$this->mail.'.'));

           if(($brojac % 6) != 5)// +8
             $pdf->Line(20, ($koordinate + 120), 600,  ($koordinate + 120));

           $koordinate += 137;// 25+
           $brojac ++;
        }

        return $pdf;
    }

    public function pdfUcenik($razred_id)
    {
        $profils = DbFinder::from('Profil')->join('Ucenik')->where('Ucenik.SkolaId', $this->skola_id)->where('Ucenik.RazredId', $razred_id)->orderBy('Ucenik.RedBr')->find();

        $pdf = new FPDF('P', 'pt');
        $pdf->SetMargins(0,0,0);
        $pdf->AddFont('Arial', '', 'arial_normal.php');
        $pdf->SetFont('Arial', '', 9);

        $brojac = 0;
        foreach($profils as $profil)
        {
           if(($brojac % 6) == 0)
           {
              $koordinate = 20;
              $pdf->AddPage();
           }

              $pdf->Text(20, $koordinate, iconv('UTF-8', 'Windows-1250', (($profil->getPol() == ProfilPeer::$pol['m']) ? 'Poštovani ' : 'Poštovana ').$profil->getIme().'!'));
              $pdf->Text(20, ($koordinate + 9), iconv('UTF-8', 'Windows-1250', 'Zahvaljujemo Vam što koristite ONLINE sistem za evidenciju đačkih ocena za  pomoć roditeljima i učenicima.'));
              $pdf->Text(20, ($koordinate + 18), iconv('UTF-8', 'Windows-1250', 'Na stranicu www.skolskidnevnik.rs možete se ulogovati koristeći sledeće podatke:'));
              $pdf->Text(20, ($koordinate + 32), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getUsername()));
              $pdf->Text(20, ($koordinate + 41), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
              $pdf->Text(20, ($koordinate + 55), iconv('UTF-8', 'Windows-1250', 'E-mail korisnički podaci:'));
              $pdf->Text(20, ($koordinate + 64), iconv('UTF-8', 'Windows-1250', 'Korisničko ime: '.$profil->getEMail()));
              $pdf->Text(20, ($koordinate + 73), iconv('UTF-8', 'Windows-1250', 'Šifra: '.$profil->getPlainPassword()));
              $pdf->Text(20, ($koordinate + 87), iconv('UTF-8', 'Windows-1250', 'Za sve eventualne nejasnoće prilikom korišćenja programa možete nas  kontaktirati na tel: '.$this->tel));
              $pdf->Text(20, ($koordinate + 96), iconv('UTF-8', 'Windows-1250', 'ili putem korisničkog dela (link PREDLOZI/GREŠKE) ili e-mailom podrska@skolskidnevnik.rs'));
              $pdf->Text(20, ($koordinate + 115), iconv('UTF-8', 'Windows-1250', 'Elektronski školski dnevnik'));

              if(($brojac % 6) != 5)
                 $pdf->Line(20, ($koordinate + 125), 600,  ($koordinate + 125));

              $koordinate += 140;
              $brojac ++;
        }

         return $pdf;
    }

}